Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Have brought in a set of CVs dictionaries for required fields -- process followed was
(First commit)
generic_CVs
for Prototype mip tables PCMDI/mip-cmor-tables#3, which included all fields that did not go into thegeneric_CV.json
filesrc/construct_cmip6plus_cv.py
to reconstruct theCMIP6Plus_CV.json
file from the individual JSON files. Includes a list of all MD5 checksums (see note below)(second commit)
The construction script should now be able to take any updated JSON files for the individual terms and reconstruct the part needed to drive CMOR.
In the src/ directory there is a cv_checksums module that contains functions for setting and validating the md5 checksums.
To be clear: The functions to handle MD5 checksums have been copied from other tools. The functions look at the dictionaries they are given, remove the original checksum entry, compute the checksum of the JSON string representing the dictionary and then adds this to the dictionary. As such these are a reasonably robust method of monitoring for manual changes, which is what I've used it for in the past elsewhere when I don't want a user manually editing carefully controlled information.